require "pubenum"

--桌子的状态
ETableState = {
	TABLE_STATE_UNKNOW = 0,
	TABLE_STATE_GAME_START = 1,        --游戏开始状态
	TABLE_STATE_WAIT_PLAYER_SITDOWN = 2, --等待玩家坐下
	TABLE_STATE_WAIT_ALL_READY = 3,			--等待所有玩家准备
	TABLE_STATE_ONE_GAME_START = 4,    --一局游戏开始
	TABLE_STATE_WAIT_START_COUNT_DOWN = 5,  --等待开始倒计时
	TABLE_STATE_WAIT_COUNT_DOWN = 6,   --开始倒计时
	TABLE_STATE_WAIT_PLAYER_CHUPAI = 7,     --等待出牌
	TABLE_STATE_CONTINUE = 8,
	TABLE_STATE_WAIT_ONE_GAME_REAL_END = 9, --等待一局游戏真正结束
	TABLE_STATE_ONE_GAME_END = 10,      --一局游戏结束
	TABLE_STATE_ONE_GAME_END_AFTER = 11, ----展示出牌牌型动画
	TABLE_STATE_ONE_GAME_REAL_END = 12, --一局游戏真正结束
	TABLE_STATE_WAIT_CLIENT_ACTION = 13, --等待客户端操作
	TABLE_STATE_WAIT_NEXT_GAMES = 14, 	---等待下一局开始(朋友桌)
}

--座位状态
ESeatState = {
	SEAT_STATE_UNKNOW = 0,
	SEAT_STATE_NO_PLAYER = 1,  	--没有玩家
	SEAT_STATE_WAIT_READY = 2,  --等待玩家准备
	SEAT_STATE_WAIT_START = 3, 	--等待开局
	SEAT_STATE_STANDUP = 4,    	--站起
	SEAT_STATE_ESCAPE = 5, 		--逃跑
	SEAT_STATE_PLAYING = 6,   	--正在游戏中
	SEAT_STATE_WATCHING = 7, 	--中途进入的直接观战
	SEAT_STATE_CHECK = 8,		--过牌
	SEAT_STATE_CHUPAI = 9,		--出牌
	SEAT_STATE_FOLLOW_CHUPAI = 10,	--跟牌
}

--玩家操作类型
EActionType = {
	ACTION_TYPE_UNKNOW = 0,
	ACTION_TYPE_CHUPAI = 1,    --出牌
	ACTION_TYPE_FOLLOW_CHUPAI = 2, --跟牌
	ACTION_TYPE_CHECK = 3,   --让牌 
	ACTION_TYPE_TIMEOUT_CHUPAI = 4, --出牌超时
	ACTION_TYPE_TIMEOUT_FOLLOW_CHUPAI = 5, --跟牌超时
	ACTION_TYPE_REQUEST_TUOGUAN = 6,	---玩家请求托管
	ACTION_TYPE_CANCEL_TUOGUAN = 7,    ---玩家取消托管
	ACTION_TYPE_FORCE_QUIT = 8,		---玩家强退
}

--斗地主牌类型
ECardType = {
	DDZ_CARD_TYPE_UNKNOWN 	= 0,
	DDZ_CARD_TYPE_SINGLE 	= 1, 		---单张
	DDZ_CARD_TYPE_PAIR	 	= 2, 		---对子
	DDZ_CARD_TYPE_THREE 	= 3, 		---三张
	DDZ_CARD_TYPE_BOMB		= 4, 		---炸弹
	DDZ_CARD_TYPE_ROCKET	= 5, 		---火箭(王炸)
	DDZ_CARD_TYPE_ONE_STRAIGHT = 6, 	---单顺
	DDZ_CARD_TYPE_TWO_STRAIGHT = 7, 	---连对
	DDZ_CARD_TYPE_THREE_STRAIGHT = 8, 	---三顺
	DDZ_CARD_TYPE_THREE_ONE		= 9, 	---三带一
	DDZ_CARD_TYPE_THREE_PAIR = 10,   	---三带二
	DDZ_CARD_TYPE_THREE_WING_ONE = 11,  ---飞机带翅膀(单)
	DDZ_CARD_TYPE_THREE_WING_PAIR = 12, --- 飞机带翅膀(双)
	-- DDZ_CARD_TYPE_FOUR_TWO_ONE = 13,  	--- 四带二张
	-- DDZ_CARD_TYPE_FOUR_TWO_PAIR = 14, 	--- 四代两对
	DDZ_CARD_TYPE_FOUR_TWO_THREE = 13, 	--- 四代三张
	DDZ_CARD_TYPE_SOFTBOMB    = 14,   	--- 软炸弹
	DDZ_CARD_TYPE_TIANBOMB    = 15,    	--- 天炸弹
}

ECardsPowerCardType = {
	ECardType.DDZ_CARD_TYPE_THREE_WING_PAIR,
	ECardType.DDZ_CARD_TYPE_THREE_PAIR,
	ECardType.DDZ_CARD_TYPE_THREE_STRAIGHT,
	ECardType.DDZ_CARD_TYPE_TWO_STRAIGHT,
	ECardType.DDZ_CARD_TYPE_ONE_STRAIGHT,
	ECardType.DDZ_CARD_TYPE_BOMB,
	ECardType.DDZ_CARD_TYPE_PAIR,
	ECardType.DDZ_CARD_TYPE_SINGLE,
}

ECardsFollowCard = {
	ECardType.DDZ_CARD_TYPE_BOMB,
	ECardType.DDZ_CARD_TYPE_ONE_STRAIGHT,
	ECardType.DDZ_CARD_TYPE_PAIR,
	ECardType.DDZ_CARD_TYPE_SINGLE,
	ECardType.DDZ_CARD_TYPE_THREE,
}

EDelayTimeCardType = {
	COMMON_CARDTYPE = 100,
	COMMON_CHUNTIAN = 500,
	DDZ_CARD_TYPE_BOMB = 120,
	DDZ_CARD_TYPE_ROCKET = 120,
	DDZ_CARD_TYPE_THREE_STRAIGHT = 220, ---三顺
	DDZ_CARD_TYPE_THREE_WING_ONE = 220,  ---飞机带翅膀(单)
	DDZ_CARD_TYPE_THREE_WING_PAIR = 220, --- 飞机带翅膀(双)
	DDZ_CARD_TYPE_FOUR_TWO_ONE = 220,  --- 四带二张
	DDZ_CARD_TYPE_FOUR_TWO_PAIR = 220, --- 四代两对
	DDZ_CARD_TYPE_FOUR_TWO_THREE = 220, --- 四代三张
	DDZ_CARD_TYPE_ONE_STRAIGHT = 220, ---单顺
	DDZ_CARD_TYPE_TWO_STRAIGHT = 220, ---连对
}

--房间类型
ERoomType = {
	ROOM_TYPE_UNKNOW = 0,
	ROOM_TYPE_COMMON = 1, 		--自建钻石
	ROOM_TYPE_FRIEND = 2,		--自建房卡
	ROOM_TYPE_SYSTEM = 3,		--系统桌
	ROOM_TYPE_COIN   = 4,		--金币桌
}

--游戏类型
EGameType = {
	GAME_TYPE_UNKNOW = 0,		-- 未知
	GAME_TYPE_NORMAL = 1, 		-- 普通16张
	GAME_TYPE_CARD15 = 2,		-- 15张
	GAME_TYPE_NORMAL_FOR2 = 3, 	-- 普通16张两人
	GAME_TYPE_CARD15_FOR2 = 4,	-- 15张两人
}

--匹配场类型
EMatchType ={
    MATCH_TYPE_PRIMARY = 1,     --初级场
    MATCH_TYPE_MEDIUM = 2,      --中级场
    MATCH_TYPE_ADVANCE = 3,     --高级场
}